<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>PxFilterFlag Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  $(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="PhysXLogoBlack.png"/></td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('structPxFilterFlag.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="structPxFilterFlag-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">PxFilterFlag Struct Reference<div class="ingroups"><a class="el" href="group__physics.html">Physics</a></div></div>  </div>
</div><!--header-->
<div class="contents">

<p>Collection of flags describing the filter actions to take for a collision pair.  
 <a href="structPxFilterFlag.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="PxFiltering_8h_source.html">PxFiltering.h</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a8de424e04d86b5772436423b0dc58083"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structPxFilterFlag.html#a8de424e04d86b5772436423b0dc58083">Enum</a> { <br />
&#160;&#160;<a class="el" href="structPxFilterFlag.html#a8de424e04d86b5772436423b0dc58083aee697d6e40f98c73eb8f5cb5201f1ca9">eKILL</a> = (1&lt;&lt;0), 
<a class="el" href="structPxFilterFlag.html#a8de424e04d86b5772436423b0dc58083a823b175755a63b3e8ad474528f5e1bf6">eSUPPRESS</a> = (1&lt;&lt;1), 
<a class="el" href="structPxFilterFlag.html#a8de424e04d86b5772436423b0dc58083a62c42e8178d44dc0ead47699f9df87b8">eCALLBACK</a> = (1&lt;&lt;2), 
<a class="el" href="structPxFilterFlag.html#a8de424e04d86b5772436423b0dc58083afbb0680c3ea5447f44fc90560bd7dd8f">eNOTIFY</a> = (1&lt;&lt;3) | eCALLBACK, 
<br />
&#160;&#160;<a class="el" href="structPxFilterFlag.html#a8de424e04d86b5772436423b0dc58083a4df1b673a1cebe8b593252a0d725128f">eDEFAULT</a> = 0
<br />
 }</td></tr>
<tr class="separator:a8de424e04d86b5772436423b0dc58083"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Collection of flags describing the filter actions to take for a collision pair. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="group__physics.html#ga675117fb97324a28d3b982b47430ea02" title="Bitfield that contains a set of raised flags defined in PxFilterFlag. ">PxFilterFlags</a> <a class="el" href="group__physics.html#ga235380b2a5b3cc89a4cd89d089d72b33" title="Filter shader to specify handling of collision pairs. ">PxSimulationFilterShader</a> <a class="el" href="classPxSimulationFilterCallback.html" title="Filter callback to specify handling of collision pairs. ">PxSimulationFilterCallback</a> </dd></dl>
</div><h2 class="groupheader">Member Enumeration Documentation</h2>
<a id="a8de424e04d86b5772436423b0dc58083"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8de424e04d86b5772436423b0dc58083">&#9670;&nbsp;</a></span>Enum</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="structPxFilterFlag.html#a8de424e04d86b5772436423b0dc58083">PxFilterFlag::Enum</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a8de424e04d86b5772436423b0dc58083aee697d6e40f98c73eb8f5cb5201f1ca9"></a>eKILL&#160;</td><td class="fielddoc"><p>Ignore the collision pair as long as the bounding volumes of the pair objects overlap. </p>
<p>Killed pairs will be ignored by the simulation and won't run through the filter again until one of the following occurs:</p>
<ul>
<li>The bounding volumes of the two objects overlap again (after being separated) </li>
<li>The user enforces a re-filtering (see <a class="el" href="classPxScene.html#af648aa06d19cfec20eeee278719f345c" title="Marks the object to reset interactions and re-run collision filters in the next simulation step...">PxScene::resetFiltering()</a>)</li>
</ul>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classPxScene.html#af648aa06d19cfec20eeee278719f345c" title="Marks the object to reset interactions and re-run collision filters in the next simulation step...">PxScene::resetFiltering()</a> </dd></dl>
</td></tr>
<tr><td class="fieldname"><a id="a8de424e04d86b5772436423b0dc58083a823b175755a63b3e8ad474528f5e1bf6"></a>eSUPPRESS&#160;</td><td class="fielddoc"><p>Ignore the collision pair as long as the bounding volumes of the pair objects overlap or until filtering relevant data changes for one of the collision objects. </p>
<p>Suppressed pairs will be ignored by the simulation and won't make another filter request until one of the following occurs:</p>
<ul>
<li>Same conditions as for killed pairs (see <a class="el" href="structPxFilterFlag.html#a8de424e04d86b5772436423b0dc58083aee697d6e40f98c73eb8f5cb5201f1ca9" title="Ignore the collision pair as long as the bounding volumes of the pair objects overlap. ">eKILL</a>) </li>
<li>The filter data or the filter object attributes change for one of the collision objects</li>
</ul>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="structPxFilterData.html" title="PxFilterData is user-definable data which gets passed into the collision filtering shader and/or call...">PxFilterData</a> <a class="el" href="group__physics.html#ga7b0c5783657e45e3fd752adfe3c1d069" title="Structure which gets passed into the collision filtering shader and/or callback providing additional ...">PxFilterObjectAttributes</a> </dd></dl>
</td></tr>
<tr><td class="fieldname"><a id="a8de424e04d86b5772436423b0dc58083a62c42e8178d44dc0ead47699f9df87b8"></a>eCALLBACK&#160;</td><td class="fielddoc"><p>Invoke the filter callback (<a class="el" href="classPxSimulationFilterCallback.html#aa434e6ecd4e0cfa7bede6c9ad10d319e" title="Filter method to specify how a pair of potentially colliding objects should be processed. ">PxSimulationFilterCallback::pairFound()</a>) for this collision pair. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classPxSimulationFilterCallback.html" title="Filter callback to specify handling of collision pairs. ">PxSimulationFilterCallback</a> </dd></dl>
</td></tr>
<tr><td class="fieldname"><a id="a8de424e04d86b5772436423b0dc58083afbb0680c3ea5447f44fc90560bd7dd8f"></a>eNOTIFY&#160;</td><td class="fielddoc"><p>Track this collision pair with the filter callback mechanism. </p>
<p>When the bounding volumes of the collision pair lose contact, the filter callback <a class="el" href="classPxSimulationFilterCallback.html#ada6fcf31c0678d3852f926f545884b3e" title="Callback to inform that a tracked collision pair is gone. ">PxSimulationFilterCallback::pairLost()</a> will be invoked. Furthermore, the filter status of the collision pair can be adjusted through <a class="el" href="classPxSimulationFilterCallback.html#a0ba6a20106fd9ef3eca10099be8017da" title="Callback to give the opportunity to change the filter state of a tracked collision pair...">PxSimulationFilterCallback::statusChange()</a> once per frame (until a pairLost() notification occurs).</p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classPxSimulationFilterCallback.html" title="Filter callback to specify handling of collision pairs. ">PxSimulationFilterCallback</a> </dd></dl>
</td></tr>
<tr><td class="fieldname"><a id="a8de424e04d86b5772436423b0dc58083a4df1b673a1cebe8b593252a0d725128f"></a>eDEFAULT&#160;</td><td class="fielddoc"><p>Provided default to get standard behavior: </p>
<p>The application configure the pair's collision properties once when bounding volume overlap is found and doesn't get asked again about that pair until overlap status or filter properties changes, or re-filtering is requested.</p>
<p>No notification is provided when bounding volume overlap is lost</p>
<p>The pair will not be killed or suppressed, so collision detection will be processed </p>
</td></tr>
</table>

</div>
</div>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li><a class="el" href="PxFiltering_8h_source.html">PxFiltering.h</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="structPxFilterFlag.html">PxFilterFlag</a></li>
    <li class="footer">Copyright &copy; 2008-2021 NVIDIA Corporation, 2788 San Tomas Expressway, Santa Clara, CA 95051 U.S.A. All rights reserved. <a href="http://www.nvidia.com ">www.nvidia.com</a></li>
  </ul>
</div>
</body>
</html>
